{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "7e04df9c",
   "metadata": {},
   "source": [
    "\n",
    "在上述公式中，$W$和$b$分别表示线性回归模型中的权重和偏差，$H(x)$表示给定输入$x$时模型的预测输出。$cost(W,b)$表示模型在给定的训练数据集上的损失函数，即预测输出和实际输出之间的平均方差。模型的目标是通过调整$W$和$b$来最小化该损失函数，从而得到更准确的预测结果。因此，优化问题可以表示为：最小化$cost(W,b)$。"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "81ff0b57",
   "metadata": {},
   "source": [
    "$$\n",
    "*\\circ c o s t={\\frac{1}{m}}\\sum_{i=1}^{m}(H(x^{(i)})-y^{(i)})^{2} \n",
    "$$\n",
    "$$\n",
    "H(x)=W x+b \n",
    "$$\n",
    "$$\n",
    "*\\,\\,c o s t(W,b)={\\frac{1}{m}}\\sum_{i=1}^{m}(H(x^{(i)})-y^{(i)})^{2} \n",
    "$$\n",
    "minimize cost(w, b\n",
    "W,b"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "43a0c87e",
   "metadata": {},
   "source": [
    "\n",
    "在线性回归模型中，权重和偏差是模型的两个基本参数，它们的作用如下：\n",
    "\n",
    "权重：表示自变量对因变量的影响程度，可以理解为特征的重要性。在线性回归中，权重通常是一个向量，每个元素对应着一个特征。\n",
    "\n",
    "偏差：表示当所有自变量取值为0时，因变量的期望输出值，即截距。偏差可以理解为模型预测的基准值。\n",
    "\n",
    "在线性回归中，通过调整权重和偏差的值，可以得到不同的线性函数，从而实现对输入特征的预测。调整权重和偏差的过程可以通过优化算法来完成，使得模型的预测结果更加准确。"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "d294c8ef",
   "metadata": {},
   "source": [
    "# "
   ]
  },
  {
   "cell_type": "markdown",
   "id": "07171144",
   "metadata": {},
   "source": [
    "# "
   ]
  },
  {
   "cell_type": "markdown",
   "id": "1d377a0c",
   "metadata": {},
   "source": [
    "Methods\n",
    "Regression\n",
    ": Linear Regression\n",
    "Cost Function\n",
    "$$\n",
    "c o s t(W)=\\frac{1}{m}\\sum_{i=1}^{m}(W x^{(i)}-y^{(i)})^{2} \n",
    "$$\n",
    "70\n",
    "bU\n",
    "50\n",
    " $\\overline{{\\S}}$ “C\n",
    "30\n",
    "20\n",
    " $\\ddot{\\vec{q}}$ "
   ]
  },
  {
   "cell_type": "markdown",
   "id": "3d4e5fc3",
   "metadata": {},
   "source": [
    "这段文字中包含了一个线性回归的损失函数以及一些看似无关的符号。其中：\n",
    "\n",
    "损失函数：$cost(W)$是基于训练数据集的线性回归模型的平均误差的函数。在这个公式中，$W$是线性回归模型的权重，$x^{(i)}$和$y^{(i)}$分别表示第$i$个训练样本的输入和输出，$m$是训练样本的总数。损失函数的目标是通过调整权重$W$，最小化预测值与真实值之间的平均误差，从而得到更准确的预测结果。\n",
    "\n",
    "符号：70、50、$\\overline{{\\S}}$、C、30、20、$\\ddot{\\vec{q}}$这些符号可能没有与线性回归模型直接相关的含义。它们可能是一个表格或者其他文本中的标记、编号、符号等，需要上下文才能理解其含义。"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "b3306e7c",
   "metadata": {},
   "source": [
    "# "
   ]
  },
  {
   "cell_type": "markdown",
   "id": "526524cb",
   "metadata": {},
   "source": [
    "#  梯度下降"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "547364d9",
   "metadata": {},
   "source": [
    "线性回归中使用的梯度下降算法可以用以下步骤进行解释：\n",
    "\n",
    "首先需要定义一个初始值来启动搜索。通常，可以将权重$W$和偏置$b$初始化为零或一个随机值。\n",
    "\n",
    "接下来，通过计算损失函数关于权重$W$和偏置$b$的偏导数来计算梯度。这些偏导数告诉我们，如果我们将$W$和$b$分别增加或减少一个小量，损失函数将如何变化。\n",
    "\n",
    "然后，根据梯度的方向和大小，更新权重$W$和偏置$b$的值。具体来说，我们将$W$和$b$的当前值减去学习率（learning rate）与梯度的乘积。学习率是一个超参数，用于控制我们每次更新的步长大小。\n",
    "\n",
    "重复步骤2和3，直到损失函数收敛到最小值或达到最大迭代次数。\n",
    "\n",
    "总的来说，梯度下降算法是一种优化算法，用于最小化线性回归模型的损失函数。通过不断地沿着损失函数的负梯度方向移动，我们可以找到使得模型最优的权重和偏置的值。"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "7b5226d3",
   "metadata": {},
   "source": [
    "$$\n",
    "W:=W_{+}-\\alpha\\frac{1}{m}\\sum_{i=1}^{m}(W x^{(i)}-y^{(i)})x^{(i)} \n",
    "$$"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "33d93fc4",
   "metadata": {},
   "source": [
    "这是梯度下降算法（Gradient Descent Algorithm）中更新权重参数 $W$ 的公式。在线性回归中，我们需要找到一个最优的 $W$ 值，使得代价函数 $cost(W)$ 达到最小值。梯度下降算法是一种迭代的优化算法，用于最小化代价函数。\n",
    "\n",
    "该公式中的符号含义如下：\n",
    "\n",
    "$W$: 需要更新的权重参数\n",
    "$W_+$: 更新后的权重参数\n",
    "$\\alpha$: 学习率，控制每次更新时的步长大小\n",
    "$m$: 训练集样本数\n",
    "$x^{(i)}$: 第 $i$ 个训练样本的特征向量\n",
    "$y^{(i)}$: 第 $i$ 个训练样本的目标值\n",
    "$cost(W)$: 代价函数，用于衡量预测值和目标值之间的误差\n",
    "$\\frac{1}{m}\\sum_{i=1}^{m}(W x^{(i)}-y^{(i)})x^{(i)}$: 代价函数对 $W$ 的偏导数，表示当前权重参数的梯度方向。通过乘以学习率 $\\alpha$ 控制更新的步长大小"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "d8def553",
   "metadata": {},
   "source": [
    "# "
   ]
  },
  {
   "cell_type": "markdown",
   "id": "10c71bb2",
   "metadata": {},
   "source": [
    "# 二分类逻辑回归模型的损失函数和梯度下降算法的计算公式"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "247c3e8f",
   "metadata": {},
   "source": [
    "$$\n",
    "c o s t(W)=\\frac{1}{m}\\sum\\quad c(H(x),y) \n",
    "$$\n",
    "$$\n",
    "c(H(x),y)= \\{\\begin{array}{l}{{-l o g(H(x))}}\\\\ {{-l o g(1-H(x))}}\\end{array}:y=0 \n",
    "$$\n",
    "$$\n",
    "G(H(x),y)=-y/o g(H(x))-(1-y)i o g(1-H(x)) \n",
    "$$"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "13a1adfb",
   "metadata": {},
   "source": [
    "\n",
    "这是二分类逻辑回归模型的损失函数和梯度下降算法的计算公式。\n",
    "\n",
    "在这个公式中，$W$ 是模型的参数，$H（x）$ 是模型对输入样本 $x$ 的预测结果，$y$ 是样本的真实标签，$m$ 是样本数量。\n",
    "\n",
    "损失函数 $cost（W）$ 表示模型在所有样本上的预测错误率的平均值，用交叉熵来度量。当 $y=0$ 时，表示样本的真实标签为负例，此时损失函数为 $-log（H（x））$，表示模型对负例的预测概率越小，损失函数越大。当 $y=1$ 时，表示样本的真实标签为正例，此时损失函数为 $-log（1-H（x））$，表示模型对正例的预测概率越大，损失函数越小。\n",
    "\n",
    "梯度下降算法通过对损失函数的梯度进行反向传播来更新模型的参数，以最小化损失函数。梯度 $G（H（x），y）$ 表示损失函数对模型预测结果 $H（x）$ 的梯度，即损失函数对 $H（x）$ 的偏导数。当 $y=0$ 时，梯度为 $-1/H(x)$，表示模型对负例的预测概率越小，梯度越大，需要减小模型的负例预测概率。当 $y=1$ 时，梯度为 $1/(1-H(x))$，表示模型对正例的预测概率越大，梯度越大，需要增加模型的正例预测概率。"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "69ddd9bd",
   "metadata": {},
   "source": [
    "# "
   ]
  },
  {
   "cell_type": "markdown",
   "id": "973628fe",
   "metadata": {},
   "source": [
    "\n",
    "这是交叉熵（Cross-entropy）的计算公式和一个示例计算过程。交叉熵是衡量两个概率分布之间差异的一种方式，通常用于衡量模型预测结果与真实结果之间的误差。\n",
    "\n",
    "公式中的第一行表示计算交叉熵的损失函数，其中H（p， q）表示真实概率分布p和模型预测的概率分布q之间的交叉熵。p表示正确的概率分布，y表示实际的结果，H（x）表示模型预测的结果，c（H（x），y）表示H（x）和y之间的交叉熵。当y=0时，交叉熵为-log（H（x）），当y=1时，交叉熵为-log（1-H（x））。\n",
    "\n",
    "公式中的第二行表示计算梯度G的公式，用于在反向传播中计算损失函数对模型参数的导数。\n",
    "\n",
    "示例计算过程中，假设有3个类别，分别为0、1、2，实际的结果为类别1，对应的概率为1，其他类别概率为0。模型预测的结果为类别0的概率为0.2，类别1的概率为0.7，类别2的概率为0.1。将实际结果代入交叉熵的计算公式中，得到c（H（x），y）=-log（0.7）。将该值代入损失函数的计算公式中，得到cost（W）=（1/3）*（-log（0.7））。\n",
    "\n",
    "最后一行是将交叉熵代入梯度计算公式中，得到实际的梯度值。"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "40d55a20",
   "metadata": {},
   "source": [
    "# "
   ]
  },
  {
   "cell_type": "markdown",
   "id": "e2fd6da0",
   "metadata": {},
   "source": [
    "# "
   ]
  },
  {
   "cell_type": "markdown",
   "id": "e6414fcf",
   "metadata": {},
   "source": [
    "$$\n",
    "\\displaystyle{\\cos\\!\\theta}(\\tau={\\frac{1}{n}}\\sum_{i=1}^{n}\\{(y-{\\hat{y}})^{2}+{\\frac{\\lambda}{2}}|w|^{2}\\} \n",
    "$$"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "f769ed04",
   "metadata": {},
   "source": [
    "\n",
    "这是一个表示损失函数的公式，用于在模型训练过程中评估模型的性能。其中 $\\theta$ 表示模型参数，$\\tau$ 表示损失函数的值，$n$ 表示数据样本的数量，$y$ 表示真实值，$\\hat{y}$ 表示模型预测值，$\\lambda$ 是一个超参数，用于控制模型复杂度，$w$ 是模型参数向量。这个损失函数包括两个部分：平方误差和正则化项。平方误差用于衡量预测值和真实值之间的差距，正则化项用于防止过拟合，使得模型参数的值不会过大。通过最小化这个损失函数，可以使模型更准确地预测真实值。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "bd33bde5",
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.9.13"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
